home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / lisp / kcl / akcl / akcl1615.lha / lsp / gprof.c < prev    next >
C/C++ Source or Header  |  1990-02-17  |  2KB  |  84 lines

  1.  
  2. #include <cmpinclude.h>
  3. #include "gprof.h"
  4. init_gprof(){do_init(VV);}
  5. #include "gprof.hc"
  6. /*    function definition for WRITE-GMON+SYMS    */
  7.  
  8. static L1()
  9. {register object *base=vs_base;
  10.     register object *sup=base+VM1; VC1
  11.     vs_reserve(VM1);
  12.     check_arg(0);
  13.     vs_top=sup;
  14. TTL:;
  15.     base[0]= small_fixnum(0);
  16.     base[1]= small_fixnum(0);
  17.     base[2]= small_fixnum(0);
  18.     base[3]= small_fixnum(0);
  19.     vs_top=(vs_base=base+0)+4;
  20.     (void) (*Lnk0)();
  21.     vs_top=sup;
  22.     princ_str("writing syms..",Cnil);
  23.     vs_base=vs_top;
  24.     (void) (*Lnk1)();
  25.     vs_top=sup;
  26.     vs_base=vs_top;
  27.     (void) (*Lnk2)();
  28.     return;
  29. }
  30. /*    function definition for MONSTARTUP    */
  31.  
  32. static L2()
  33. {    object *old_base=vs_base;
  34.     int x;
  35.     check_arg(2);
  36.     x=
  37.     mymonstartup(
  38.     object_to_int(vs_base[0]),
  39.     object_to_int(vs_base[1]));
  40.     vs_top=(vs_base=old_base)+1;
  41.     vs_base[0]=make_fixnum(x);
  42. }
  43. /*    function definition for MONITOR2    */
  44.  
  45. static L3()
  46. {    object *old_base=vs_base;
  47.     int x;
  48.     check_arg(4);
  49.     x=
  50.     mymonitor(
  51.     object_to_int(vs_base[0]),
  52.     object_to_int(vs_base[1]),
  53.     object_to_int(vs_base[2]),
  54.     object_to_int(vs_base[3]));
  55.     vs_top=(vs_base=old_base)+1;
  56.     vs_base[0]=make_fixnum(x);
  57. }
  58. /*    function definition for MONCONTROL    */
  59.  
  60. static L4()
  61. {    object *old_base=vs_base;
  62.     int x;
  63.     check_arg(1);
  64.     x=
  65.     moncontrol(
  66.     object_to_int(vs_base[0]));
  67.     vs_top=(vs_base=old_base)+1;
  68.     vs_base[0]=make_fixnum(x);
  69. }
  70. /*    function definition for WRITE_OUTSYMS    */
  71.  
  72. static L5()
  73. {    object *old_base=vs_base;
  74.     int x;
  75.     check_arg(0);
  76.     x=
  77.     write_outsyms();
  78.     vs_top=(vs_base=old_base)+1;
  79.     vs_base[0]=make_fixnum(x);
  80. }
  81. static LnkT2(){ call_or_link(VV[2],&Lnk2);} /* WRITE_OUTSYMS */
  82. static LnkT1(){ call_or_link(VV[1],&Lnk1);} /* SET-UP-COMBINED */
  83. static LnkT0(){ call_or_link(VV[0],&Lnk0);} /* MONITOR2 */
  84.